package br.com.iplant.dao;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import br.com.iplant.util.Conexao;
import br.com.iplant.vo.Cultura;
import br.com.iplant.vo.Doenca;
import br.com.iplant.vo.Variedade;


public class VariedadeDAO {
	public Variedade salvar(Variedade variedade) {
		try {

			String sql = "insert into variedades(variedadeId,descricao,transConv,tipo,ciclo,qtdDias,epocaDePlantio,"
					+ "uso,corDoGrao,densidade,texturaDoGrao,resistenciaAcamamento,alturaEspiga,alturaPlanta"
					+ "nivelTecnologia,regiaoAdaptacao) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";

			PreparedStatement ps = Conexao.getCon().prepareStatement(sql);
			ps.setInt(1, variedade.getVariedadeId());
			ps.setString(2, variedade.getDescricao());
			ps.setString(3, variedade.getTransConv());
			ps.setString(4, variedade.getTipo());
			ps.setString(5, variedade.getCiclo());
			ps.setInt(6, variedade.getQtdDias());
			ps.setString(7, variedade.getEpocaDePlantio());
			ps.setString(8, variedade.getUso());
			ps.setString(9, variedade.getCorDoGrao());
			ps.setString(10, variedade.getDensidade());
			ps.setString(11, variedade.getTexturaDoGrao());
			ps.setString(12, variedade.getResistenciaAcamamento());
			ps.setFloat(13, variedade.getAlturaEspiga());
			ps.setFloat(14, variedade.getAlturaPlanta());
			ps.setString(15, variedade.getNivelTecnologia());
			ps.setString(16, variedade.getRegiaoAdaptacao());

			ps.execute();

			System.out.println("Gravado!");
			ps.close();

		} catch (SQLException e) {
			e.printStackTrace();
		}
		return variedade;
	}

	public List<Variedade> getTodasAsVariedades() {
		List<Variedade> variedades = new ArrayList<Variedade>();
		try {
			String sql = "select * from variedades";
			Statement ps = Conexao.getCon().createStatement();
			ResultSet rs = ps.executeQuery(sql);
			while (rs.next()) {
				variedades.add(new Variedade(rs.getInt("variedade_id"), rs
						.getString("descricao"), rs.getString("transConv"), rs
						.getString("tipo"), rs.getString("ciclo"), rs
						.getInt("qtdDias"), rs.getString("epocaDePlantio"), rs
						.getString("uso"), rs.getString("corDoGrao"), rs
						.getString("densidade"), rs.getString("texturaDoGrao"),
						rs.getString("resistenciaAcamamento"), rs
								.getFloat("alturaEspiga"), rs
								.getFloat("alturaPlanta"), rs
								.getString("nivelTecnologia"), rs
								.getString("regiaoAdaptacao")));
			}

			ps.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return variedades;
	}

}
